import { getIndxListApi, getNewIndxListApi, getHotIndxListApi } from '../../api/index'
let app=getApp()
Page({

    /**
     * 页面的初始数据
     */
    data: {
        // 轮播图
        banner: [],
        // 最新文章数据
        newList: [],
        // 热门数据
        hotList: [],
        // 获取最新请求数据
        page: 1,
        limit: 10,
        // 最新文章数据
        count: 0,
        num_day: 0,
        num_week: 0,
        // 页面加载所需变量
        // 数据是否加载完
        noMore: false,
        // 加载中
        loading: true,
        // 数据是否加载失败
        loadingFailed: false,
        // 下拉刷新
        nextLoading:false
    },

    //   获取首页数据
    async initData() {
        // 获取轮播图
        const { data:  { banner,allCate }  } = await getIndxListApi()
        // console.log(data);
        // 把allCate放在app里
        app.allCate=allCate
        // 获取热门
        const { data:  { list }  } = await getHotIndxListApi()
        // console.log(data);
        // 赋值
        this.setData({ banner, hotList: list })

    },
    async getList() {
        // 获取最新文章数据
        const { data:  { num_day, num_week, list: { count, data } }  } = await getNewIndxListApi({ page: this.data.page, limit: this.data.limit })
        // console.log(data);
        // 赋值
        this.setData({ num_day, num_week, count, newList: [...this.data.newList, ...data] })
    },

    // 监听页面加载到底部
    scrollToLower() {
        // console.log(66);
        try {
            // 还有数据，继续加载
            if (this.data.newList.length < this.data.count) {
                this.setData({ page: this.data.page+1 })
                this.getList()
                this.setData({ noMore: false, loading: true, loadingFailed: false, })
            } else {
                this.setData({ noMore: true, loading: false, loadingFailed: false, })
            }
        } catch (err) {
            console.log(err);
            this.setData({ loadingFailed: true, noMore: true, loading: false })
        }
    },
    // 下拉刷新
    nextScroll(){
        this.setData({page:1,newList:[]})
        this.initData()
        this.getList()
        this.setData({nextLoading:false})
    },
    /**
     * 生命周期函数--监听页面加载
     */
    onLoad: function (options) {
        this.initData()
        this.getList()
    },

    /**
     * 生命周期函数--监听页面初次渲染完成
     */
    onReady: function () {

    },

    /**
     * 生命周期函数--监听页面显示
     */
    onShow: function () {
        // this.getTabBar获取自定义tabBar组件实例，设置对应显示高亮
        this.getTabBar().setData({ selected: 0 })
        // console.log(666);
       
    },

    /**
     * 生命周期函数--监听页面隐藏
     */
    onHide: function () {

    },

    /**
     * 生命周期函数--监听页面卸载
     */
    onUnload: function () {

    },

    /**
     * 页面相关事件处理函数--监听用户下拉动作
     */
    onPullDownRefresh: function () {

    },

    /**
     * 页面上拉触底事件的处理函数
     */
    onReachBottom: function () {

    },

    /**
     * 用户点击右上角分享
     */
    onShareAppMessage: function () {

    }
})